/*******************************************************************************
 * Copyleft (c) 2020 将狼才鲸
 *
 * \file    publicdef.h
 * \brief   公共头文件，所有模块都需要包含它
 * \author  将狼才鲸
 * \version 1.0.0
 * \date    2020-05-02
 * \license MulanPSL-1.0
 *
 * -----------------------------------------------------------------------------
 * 备注：可以控制编译成最终程序还是编译单元测试程序
 *
 * -----------------------------------------------------------------------------
 * 文件修改历史：
 * <时间>       | <版本>    | <作者>    | <描述>
 * 2020-05-02   | v1.0.0    | 将狼才鲸  | 创建文件
 * -----------------------------------------------------------------------------
 ******************************************************************************/

#ifndef _PUBLICDEF__H
#define _PUBLICDEF__H

/*!
 * \brief 定义print_ctrl.h中的默认调试输出级别
 *        (也可以不在这里定义，在Makefile中定义)
 */
#define PRINT_LEVEL     INFO    /**< 默认调试级别 */

/*!
 * \brief 控制一次将所有模块编译成一个执行文件，
 *        还是将所有模块分别编译成单独的单元测试程序
 */

#define MODULES_UNITEST     /**< 是否编译单元测试用例 */
#ifdef  MODULES_UNITEST     /**< 开启以下模块的单元测试用例编译 */
#   define PRINT_CTRL_MODULE_UNITEST
#   define MENU_MODULE_UNITEST
#endif /* MODULES_UNITEST */

#define ALL_MODULES_UNITEST /**< 一次性编出所有模块的单元测试用例 */

#endif /* _PUBLICDEF__H */

